'''
Author: didiplus
Date: 2024-09-30 15:20:53
LastEditTime: 2024-09-30 15:25:58
LastEditors: didiplus
Description: 
FilePath: \pythonscript\python\趣学Python算法100例\13、求速度\demo.py
'''

def is_palindrome(num):
    """
    判断一个数是否为回文数

    参数:
    num: 要检查的数

    返回:
    如果是回文数，返回 True；否则返回 False
    """
    return str(num) == str(num)[::-1]


def find_next_palindrome(start):
    """
    找到大于给定起始值的最小回文数

    参数:
    start: 起始值

    返回:
    大于起始值的最小回文数，如果不存在则返回 None
    """
    current = start + 1
    while current < 100000:  # 最大五位数
        if is_palindrome(current):
            return current
        current += 1
    return None


# 初始对称数
initial_palindrome = 95859

# 找到下一个对称数
next_palindrome = find_next_palindrome(initial_palindrome)

if next_palindrome:
    # 计算速度
    speed = (next_palindrome - initial_palindrome) / 2
    print("新的对称数是：", next_palindrome)
    print("汽车的速度是：", speed)
else:
    print("没有找到新的对称数。")

